Consumers and businesses frequently rely on legacy applications. Legacy applications may be time-tested, inexpensive, and may provide a continuity of experience or workflow. However, legacy applications may not be updated to take advantage of new features on the systems on which they run. This may include new security features that may prevent security exploits in the legacy applications, such as heap corruption.
Even if new security features are enabled for legacy applications, the security features might interfere with the functionality or stability of the applications. While an application vendor may test each new security feature for each legacy application offered by the vendor, this may prove to be a costly burden.